package com.yungu.swift.assets.driver.model.dto;


import com.yungu.swift.base.model.BaseDto;
import com.yungu.swift.base.model.annotation.Desensitization;
import com.yungu.swift.system.finance.model.dto.FinanceWithdrawalDto;

import java.util.Date;
import java.util.List;

/**
 * 司机提现账单
 **/
public class DriverWithdrawalDto extends BaseDto {

    /**
     * 司机姓名
     */
    @Desensitization(type = Desensitization.DesensitionType.NAME)
    private String name;
    /**
     * 手机号码
     */
    @Desensitization(type = Desensitization.DesensitionType.MOBILE)
    private String mobile;
    /**
     * 平台流水号
     */
    private String platformSerialNumber;
    /**
     * 第三方流水号
     */
    private String thirdSerialNumber;
    /**
     * 提现金额
     */
    private Double money;
    /**
     * 平台状态
     */
    private String status;
    /**
     * 第三方平台状态 1:处理中 2：打款成功 3：打款失败
     */
    private int thirdPayStatus;
    /**
     * 提现状态 1:提现中 2:提现成功 3提现失败
     */
    private int withdrawalStatus;
    /**
     * 备注
     */
    private String description;
    /**
     * 提现完成时间
     */
    private Date finishTime;
    /**
     * 收款账号
     **/
    private String collectAccount;

    /**
     * 收款人
     **/
    @Desensitization(type = Desensitization.DesensitionType.NAME)
    private String collectName;
    /**
     * 收款人银行名称
     */
    private String collectBankName;

    /**
     * 收款类型（1：银联卡、2：微信 、3：支付宝）
     **/
    private Integer collectType;

    /**
     * 提现流水列表
     */
    private List<FinanceWithdrawalDto> financeWithdrawalDtoList;


    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getPlatformSerialNumber() {
        return platformSerialNumber;
    }

    public void setPlatformSerialNumber(String platformSerialNumber) {
        this.platformSerialNumber = platformSerialNumber;
    }

    public String getThirdSerialNumber() {
        return thirdSerialNumber;
    }

    public void setThirdSerialNumber(String thirdSerialNumber) {
        this.thirdSerialNumber = thirdSerialNumber;
    }

    public Double getMoney() {
        return money;
    }

    public void setMoney(Double money) {
        this.money = money;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public int getThirdPayStatus() {
        return thirdPayStatus;
    }

    public void setThirdPayStatus(int thirdPayStatus) {
        this.thirdPayStatus = thirdPayStatus;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Date getFinishTime() {
        return finishTime;
    }

    public void setFinishTime(Date finishTime) {
        this.finishTime = finishTime;
    }

    public String getCollectAccount() {
        return collectAccount;
    }

    public void setCollectAccount(String collectAccount) {
        this.collectAccount = collectAccount;
    }

    public String getCollectName() {
        return collectName;
    }

    public void setCollectName(String collectName) {
        this.collectName = collectName;
    }

    public Integer getCollectType() {
        return collectType;
    }

    public void setCollectType(Integer collectType) {
        this.collectType = collectType;
    }

    public List<FinanceWithdrawalDto> getFinanceWithdrawalDtoList() {
        return financeWithdrawalDtoList;
    }

    public void setFinanceWithdrawalDtoList(List<FinanceWithdrawalDto> financeWithdrawalDtoList) {
        this.financeWithdrawalDtoList = financeWithdrawalDtoList;
    }

    public int getWithdrawalStatus() {
        return withdrawalStatus;
    }

    public void setWithdrawalStatus(int withdrawalStatus) {
        this.withdrawalStatus = withdrawalStatus;
    }

    public String getCollectBankName() {
        return collectBankName;
    }

    public void setCollectBankName(String collectBankName) {
        this.collectBankName = collectBankName;
    }
}
